home *** CD-ROM | disk | FTP | other *** search
- /* Integer registers */
-
- { "r0", INTREG, 0 },
- { "r1", INTREG, 1 },
- { "r2", INTREG, 2 },
- { "r3", INTREG, 3 },
- { "r4", INTREG, 4 },
- { "r5", INTREG, 5 },
- { "r6", INTREG, 6 },
- { "r7", INTREG, 7 },
- { "r8", INTREG, 8 },
- { "r9", INTREG, 9 },
- { "r10", INTREG, 10 },
- { "r11", INTREG, 11 },
- { "r12", INTREG, 12 },
- { "r13", INTREG, 13 },
- { "r14", INTREG, 14 },
- { "r15", INTREG, 15 },
- { "r16", INTREG, 16 },
- { "r17", INTREG, 17 },
- { "r18", INTREG, 18 },
- { "r19", INTREG, 19 },
- { "r20", INTREG, 20 },
- { "r21", INTREG, 21 },
- { "r22", INTREG, 22 },
- { "r23", INTREG, 23 },
- { "r24", INTREG, 24 },
- { "r25", INTREG, 25 },
- { "r26", INTREG, 26 },
- { "r27", INTREG, 27 },
- { "r28", INTREG, 28 },
- { "r29", INTREG, 29 },
- { "r30", INTREG, 30 },
- { "r31", INTREG, 31 },
-
- /* Floating-point registers */
-
- { "f0", FLOATREG, 0 },
- { "f1", FLOATREG, 1 },
- { "f2", FLOATREG, 2 },
- { "f3", FLOATREG, 3 },
- { "f4", FLOATREG, 4 },
- { "f5", FLOATREG, 5 },
- { "f6", FLOATREG, 6 },
- { "f7", FLOATREG, 7 },
- { "f8", FLOATREG, 8 },
- { "f9", FLOATREG, 9 },
- { "f10", FLOATREG, 10 },
- { "f11", FLOATREG, 11 },
- { "f12", FLOATREG, 12 },
- { "f13", FLOATREG, 13 },
- { "f14", FLOATREG, 14 },
- { "f15", FLOATREG, 15 },
-
- /* Special registers */
-
- { "upsw", SPECIALREG, 0 }, /* User process status word */
- { "cwp", SPECIALREG, 1 }, /* Current Window Pointer */
- { "swp", SPECIALREG, 2 }, /* Saved Window Pointer */
- { "cpu_pc", SPECIALREG, 3 }, /* Program Counter */
- { "Pc", SPECIALREG, 3 },
- { "pc", SPECIALREG, 3 },
- { "fpu_pc", SPECIALREG, 4 }, /* Last FPU instruction initiated */
- { "write_pc", SPECIALREG, 6 }, /* PC of instruction that is writing its
- result this cycle */
- { "wr_pc", SPECIALREG, 6 },
-
-
- /* conditions */
- { "always", CONDITION, 0x00 },
- { "ge", CONDITION, 0x01 },
- { "ne", CONDITION, 0x02 },
- { "neq", CONDITION, 0x02 },
- { "gt", CONDITION, 0x03 },
- { "never", CONDITION, 0x04 },
- { "lt", CONDITION, 0x05 },
- { "eq", CONDITION, 0x06 },
- { "le", CONDITION, 0x07 },
- { "uge", CONDITION, 0x09 },
- { "ugt", CONDITION, 0x0b },
- { "ult", CONDITION, 0x0d },
- { "ule", CONDITION, 0x0f },
- { "fp_true", CONDITION, 0x10 },
- { "eq_tag", CONDITION, 0x11 },
- { "eql", CONDITION, 0x12 },
- { "eq_38", CONDITION, 0x13 },
- { "fp_false", CONDITION, 0x14 },
- { "ne_tag", CONDITION, 0x15 },
- { "neql", CONDITION, 0x16 },
- { "ne_38", CONDITION, 0x17 },
- { "endp", CONDITION, 0x18 },
- { "eq_tag_imm", CONDITION, 0x19 },
- { "eq_tc", CONDITION, 0x19 },
- { "nendp", CONDITION, 0x1c },
- { "ne_tag_imm", CONDITION, 0x1d },
- { "neq_tc", CONDITION, 0x1d },
- { "fp_gt", CONDITION, 1 },
- { "fp_eq", CONDITION, 2 },
- { "fp_ge", CONDITION, 3 },
- { "fp_lt", CONDITION, 4 },
- { "fp_ne", CONDITION, 5 },
- { "fp_le", CONDITION, 6 },
- { "fp_unord", CONDITION, 8 },
- { "fp_iv_unord", CONDITION, 16 },
- { "fp_g", CONDITION, 1 },
- { "fp_e", CONDITION, 2 },
- { "fp_eg", CONDITION, 3 },
- { "fp_l", CONDITION, 4 },
- { "fp_lg", CONDITION, 5 },
- { "fp_le", CONDITION, 6 },
- { "fp_leg", CONDITION, 7 },
- { "fp_u", CONDITION, 8 },
- { "fp_ug", CONDITION, 9 },
- { "fp_ue", CONDITION, 10 },
- { "fp_ueg", CONDITION, 11 },
- { "fp_ul", CONDITION, 12 },
- { "fp_ulg", CONDITION, 13 },
- { "fp_ule", CONDITION, 14 },
- { "fp_uleg", CONDITION, 15 },
- { "fgt", CONDITION, 1 },
- { "feq", CONDITION, 2 },
- { "fge", CONDITION, 3 },
- { "flt", CONDITION, 4 },
- { "fne", CONDITION, 5 },
- { "fle", CONDITION, 6 },
-
- /* Cache Controller registers */
- { "GSN0", CACHEREG, 0x0080 },
- { "GSN1", CACHEREG, 0x0180 },
- { "GSN2", CACHEREG, 0x0280 },
- { "GSN3", CACHEREG, 0x0380 },
- { "RPTM02", CACHEREG, 0x0060 },
- { "RPTM12", CACHEREG, 0x0160 },
- { "RPTM22", CACHEREG, 0x0260 },
- { "RPTM32", CACHEREG, 0x0360 },
- { "RPTM01", CACHEREG, 0x0040 },
- { "RPTM11", CACHEREG, 0x0140 },
- { "RPTM21", CACHEREG, 0x0240 },
- { "RPTM31", CACHEREG, 0x0340 },
- { "RPTM00", CACHEREG, 0x0020 },
- { "RPTM10", CACHEREG, 0x0120 },
- { "RPTM20", CACHEREG, 0x0220 },
- { "RPTM30", CACHEREG, 0x0320 },
- { "GVA0", CACHEREG, 0x0400 },
- { "GVA1", CACHEREG, 0x0420 },
- { "GVA2", CACHEREG, 0x0440 },
- { "GVA3", CACHEREG, 0x0460 },
- { "GVA4", CACHEREG, 0x0480 },
- { "PTEVA0", CACHEREG, 0x0500 },
- { "PTEVA1", CACHEREG, 0x0520 },
- { "PTEVA2", CACHEREG, 0x0540 },
- { "PTEVA3", CACHEREG, 0x0560 },
- { "PTEVA4", CACHEREG, 0x0580 },
- { "RPTEVA0", CACHEREG, 0x0600 },
- { "RPTEVA1", CACHEREG, 0x0620 },
- { "RPTEVA2", CACHEREG, 0x0640 },
- { "RPTEVA3", CACHEREG, 0x0660 },
- { "RPTEVA4", CACHEREG, 0x0680 },
- { "G0", CACHEREG, 0x0700 },
- { "G1", CACHEREG, 0x0720 },
- { "G2", CACHEREG, 0x0740 },
- { "G3", CACHEREG, 0x0760 },
- { "G4", CACHEREG, 0x0780 },
- { "T00", CACHEREG, 0x0800 },
- { "T01", CACHEREG, 0x0820 },
- { "T02", CACHEREG, 0x0840 },
- { "T03", CACHEREG, 0x0860 },
- { "T04", CACHEREG, 0x0900 },
- { "T05", CACHEREG, 0x0920 },
- { "T06", CACHEREG, 0x0940 },
- { "T07", CACHEREG, 0x0960 },
- { "T10", CACHEREG, 0x0A00 },
- { "T11", CACHEREG, 0x0A20 },
- { "T12", CACHEREG, 0x0A40 },
- { "T13", CACHEREG, 0x0A60 },
- { "T20", CACHEREG, 0x0B00 },
- { "T21", CACHEREG, 0x0B20 },
- { "T22", CACHEREG, 0x0B40 },
- { "T23", CACHEREG, 0x0B60 },
- { "IStatus0", CACHEREG, 0x0C00 },
- { "IStatus1", CACHEREG, 0x0C20 },
- { "IStatus2", CACHEREG, 0x0C40 },
- { "IStatus3", CACHEREG, 0x0C60 },
- { "IReg0", CACHEREG, 0x0C00 },
- { "IReg1", CACHEREG, 0x0C20 },
- { "IReg2", CACHEREG, 0x0C40 },
- { "IReg3", CACHEREG, 0x0C60 },
- { "IMask0", CACHEREG, 0x0D00 },
- { "IMask1", CACHEREG, 0x0D20 },
- { "IMask2", CACHEREG, 0x0D40 },
- { "IMask3", CACHEREG, 0x0D60 },
- { "FEStatus0", CACHEREG, 0x0E00 },
- { "FEStatus1", CACHEREG, 0x0E20 },
- { "FEStatus2", CACHEREG, 0x0E40 },
- { "FEStatus3", CACHEREG, 0x0E60 },
- { "FEReg0", CACHEREG, 0x0E00 },
- { "FEReg1", CACHEREG, 0x0E20 },
- { "FEReg2", CACHEREG, 0x0E40 },
- { "FEReg3", CACHEREG, 0x0E60 },
- { "Mode", CACHEREG, 0x0F20 },
- { "SlotId", CACHEREG, 0x0F00 },
- { "C00", CACHEREG, 0x1000 },
- { "C01", CACHEREG, 0x1020 },
- { "C02", CACHEREG, 0x1040 },
- { "C03", CACHEREG, 0x1060 },
- { "C10", CACHEREG, 0x1100 },
- { "C11", CACHEREG, 0x1120 },
- { "C12", CACHEREG, 0x1140 },
- { "C13", CACHEREG, 0x1160 },
- { "C20", CACHEREG, 0x1200 },
- { "C21", CACHEREG, 0x1220 },
- { "C22", CACHEREG, 0x1240 },
- { "C23", CACHEREG, 0x1260 },
- { "C30", CACHEREG, 0x1300 },
- { "C31", CACHEREG, 0x1320 },
- { "C32", CACHEREG, 0x1340 },
- { "C33", CACHEREG, 0x1360 },
- { "C40", CACHEREG, 0x1400 },
- { "C41", CACHEREG, 0x1420 },
- { "C42", CACHEREG, 0x1440 },
- { "C43", CACHEREG, 0x1460 },
- { "C50", CACHEREG, 0x1500 },
- { "C51", CACHEREG, 0x1520 },
- { "C52", CACHEREG, 0x1540 },
- { "C53", CACHEREG, 0x1560 },
- { "C60", CACHEREG, 0x1600 },
- { "C61", CACHEREG, 0x1620 },
- { "C62", CACHEREG, 0x1640 },
- { "C63", CACHEREG, 0x1660 },
- { "C70", CACHEREG, 0x1700 },
- { "C71", CACHEREG, 0x1720 },
- { "C72", CACHEREG, 0x1740 },
- { "C73", CACHEREG, 0x1760 },
- { "C80", CACHEREG, 0x1800 },
- { "C81", CACHEREG, 0x1820 },
- { "C82", CACHEREG, 0x1840 },
- { "C83", CACHEREG, 0x1860 },
- { "C90", CACHEREG, 0x1900 },
- { "C91", CACHEREG, 0x1920 },
- { "C92", CACHEREG, 0x1940 },
- { "C93", CACHEREG, 0x1960 },
- { "Ca0", CACHEREG, 0x1a00 },
- { "Ca1", CACHEREG, 0x1a20 },
- { "Ca2", CACHEREG, 0x1a40 },
- { "Ca3", CACHEREG, 0x1a60 },
- { "Cb0", CACHEREG, 0x1b00 },
- { "Cb1", CACHEREG, 0x1b20 },
- { "Cb2", CACHEREG, 0x1b40 },
- { "Cb3", CACHEREG, 0x1b60 },
- { "Cc0", CACHEREG, 0x1c00 },
- { "Cc1", CACHEREG, 0x1c20 },
- { "Cc2", CACHEREG, 0x1c40 },
- { "Cc3", CACHEREG, 0x1c60 },
- { "Cd0", CACHEREG, 0x1d00 },
- { "Cd1", CACHEREG, 0x1d20 },
- { "Cd2", CACHEREG, 0x1d40 },
- { "Cd3", CACHEREG, 0x1d60 },
- { "Ce0", CACHEREG, 0x1e00 },
- { "Ce1", CACHEREG, 0x1e20 },
- { "Ce2", CACHEREG, 0x1e40 },
- { "Ce3", CACHEREG, 0x1e60 },
- { "Cf0", CACHEREG, 0x1f00 },
- { "Cf1", CACHEREG, 0x1f20 },
- { "Cf2", CACHEREG, 0x1f40 },
- { "Cf3", CACHEREG, 0x1f60 },
-
- /* Cache Operation Codes -- Subject to Change! Use symbolically Only!
- ** If you change the codes here, change the #defines in the
- ** simulator, too.
- */
- { "RESET", CACHEOP, 0x4 },
- { "RDREG", CACHEOP, 0x8 },
- { "WRREG", CACHEOP, 0xC },
- { "FLUSH", CACHEOP, 0x10 },
-